﻿#pragma once

#ifndef __CR_CORE_FOUNDATION_H__
#define __CR_CORE_FOUNDATION_H__

//引入C++标准库
#include <string>
#include <sstream>
#include <fstream>
#include <iostream>
#include <thread>
#include <atomic>
#include <memory>
#include <functional>
#include <future>
#include <utility>
#include <cctype>
#include <filesystem>
#include <map>
#include <unordered_map>
#include <queue>
#include <vector>

#include "crmacors.h"

//基础库 (字符串, 线程安全 etc.)
#include "core/crString.h"
#include "core/crScopedArray.h"
#include "core/crLock.h"
#include "core/crSingleton.h"
#include "core/crThreadPool.h"
#include "core/crThreadsafeUnorderedMap.h"
#include "core/crThreadsafeQueue.h"
#include "core/crEnableIf.h"
#include "core/crHash.h"
// #include "core/crFileSystem.h"

//Utils
#include "utils/crMD5Engine.h"

//http包装
#include "http/crHttpCurlholder.h"
#include "http/crHttpTimeout.h"
#include "http/crHttpTypes.h"
#include "http/crHttpUtils.h"
#include "http/crHttpError.h"
#include "http/crHttpAuthentication.h"
#include "http/crHttpPayload.h"
#include "http/crHttpProxies.h"
#include "http/crHttpCookies.h"
#include "http/crHttpParameters.h"
#include "http/crHttpMultipart.h"
#include "http/crHttpMaxRedirects.h"
#include "http/crHttpLowSpeed.h"
#include "http/crHttpVerifySsl.h"
#include "http/crHttpResponse.h"
#include "http/crHttpSession.h"
#include "http/crHttpApi.h"

//数据缓存
#include "cache/crFileNameGenerator.h"
#include "cache/crMemoryCache.h"
#include "cache/crDiskCache.h"

//图片下载类
#include "imgloader/crImageLoadTypes.h"
#include "imgloader/crImageLoadConfig.h"
#include "imgloader/crImageLoadError.h"
#include "imgloader/crImageLoadResult.h"
#include "imgloader/crImageLoadLoader.h"

#ifndef _USRDLL
#include "imgloader/crImageLoaderApi.h"
#endif // !_USRDLL

#endif // !__CR_CORE_FOUNDATION_H__